perm filename ELEPHA.SLI[E89,JMC] blob
sn#883538 filedate 1990-04-09 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00009 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 %elepha.sli[e89,jmc][e89,jmc] Elephant 2000 airline program
C00003 00003 \centerline{ELEPHANT 2000 AIRLINE RESERVATION PROGRAM}
C00005 00004 \centerline{Features of Elephant}
C00006 00005 \centerline{ELEPHANT 2000: A Programming Language for the Year 2005}
C00007 00006 \centerline{Examples}
C00008 00007 \centerline{Applications}
C00009 00008 \centerline{Illocutionary and Perlocutionary Specifications}
C00010 00009 \vfill
C00011 ENDMK
C⊗;
%elepha.sli[e89,jmc][e89,jmc] Elephant 2000 airline program
\input slide2.tex[1,jmc]
\bigskip
\bigskip
% suppresses vertical bars
\overfullrule=0pt
\centerline{ELEPHANT 2000 AIRLINE RESERVATION PROGRAM}
\bigskip
$${\bf if} ¬full flt {\bf then} accept.request commit admit(psgr,flt)$$
%
$$answer.query committed admit(psgr,flt)$$
%
$$accept.request decommit admit(psgr,flt)$$
%
$$\eqalign{if now = time {\bf then} flt& ∧ committed admit(psgr,flt)\cr
&{\bf then} accept.request admit(psgr,flt)\cr}$$
%
$$full flt ≡ card\{psgr | committed admit(psgr,flt)\} = capacity flt$$
\vfill\eject
\centerline{ELEPHANT 2000 AIRLINE RESERVATION PROGRAM}
\bigskip
$${\bf if} ¬full flt {\bf then accept.request make commitment} admit(psgr,flt)$$
%
$${\bf answer.query exists commitment} admit(psgr,flt)$$
%
$${\bf accept.request cancel commitment} admit(psgr,flt)$$
%
$$\eqalign{{\bf if}& {\bf now = time} flt\cr
& ∧ {\bf exists commitment} admit(psgr,flt)\cr
& ∧ ¬full1 flt\cr
&\quad {\bf then accept.request} admit(psgr,flt)\cr}$$
%
$$\eqalign{full& flt ≡ \cr
&card\{psgr | {\bf exists commitment} admit(psgr,flt)\} = capacity flt\cr}$$
%
$$\eqalign{full1& flt ≡ \cr
&card\{psgr | {\bf did} admit(psgr,flt)\} = capacity flt\cr}$$
\vfill\eject
\centerline{Features of Elephant}
\bigskip
\itemb I-O is in speech acts.
\bigskip
\itemb Correctness involves proper performance of speech acts.
\bigskip
\itemb Programs can refer to the past.
\bigskip
\itemb Programs are represented as sentences of logic.
\bigskip
\itemb {\it Perlocutionary} and {\it illocutionary} specifications.
\vfill\eject
\centerline{ELEPHANT 2000: A Programming Language for the Year 2005}
\bigskip
\itemb General considerations about programming languages
\bigskip
\itemb English syntax in programming languages isn't interesting.
\itemxx It just gives the boss the illusion of understanding.
\bigskip
\itemb Natural language has many features for expressing procedures
not present in any present-day programming language.
\bigskip
\itemxx Natural language presumes common sense, but that's still too hard.
\itemxx Referring to the past and speech acts may not be too hard.
\vfill\eject
\centerline{Examples}
\itemb Speech acts
\itemxx Requests (authorized, comprehensible)
\itemxx Questions (comprehensible)
\itemxx Answers to questions (truthful and responsive)
\itemxx Offers (authorized)
\itemxx Acceptances and refusals
\itemxx Promises (authorized and kept)
\bigskip
\itemb Reference to the past
\itemxx A passenger has a reservation if he has made one and hasn't cancelled.
\vfill\eject
\centerline{Applications}
\bigskip
\itemb Transaction Processing
\itemb Electronic Data Interchange
\bigskip
\itemb Airline reservation system
\itemb Programmed Control Tower
\vfill\eject
\centerline{Illocutionary and Perlocutionary Specifications}
\bigskip
\itemb Illocutionary vs. perlocutionary speech acts
\itemxx I tell you the meeting is tomorrow.
\itemxx I inform you that the meeting is tomorrow. (You believe it.)
\medskip
\itemxx I order you to come to the meeting.
\itemxx I get you to come to the meeting.
\bigskip
itemb Illocutionary and perlocutionary program specifications.
\itemxx It says ``Cleared to land'' only when it believes the runway is clear.
\itemxx It says ``Cleared to land'' only when the runway is clear.
\vfill\eject
\vfill
\noindent{\fiverm elepha.sli[e89,jmc}
\vskip -1in
\end